A compute node is a combination of hardware resources, including one or more processing devices, memory and networking circuits, as well as a software module known as a hypervisor. The hypervisor is used to support a plurality of virtual machines, each for example being associated with a different operating system. A compute node provides a single execution environment in which more than one virtual machine may be executed. It has been proposed to use the hypervisor of a compute node to virtualise both an RTOS (real-time operating system) and a GPOS (general purpose operating system) on a same platform.
Automotive embedded systems today comprise hundreds of distributed single core ECUs (Electronic Control Units), each realising an electronic function within the vehicle. These units are connected via a network generally implemented by a controller area network (CAN), or CAN-FD (Controller Area Network with flexible data rate), or a network known as FlexRay. However, such a solution has reached its limits in terms of bandwidth and scalability. Furthermore, functions termed in the industry as “infotainment” functions, as well as advanced driver assistance systems (ADAS), add an extraordinary amount of streaming data and control signals, which cannot be handled by such networks alone. As a consequence, there is a general move towards other network protocols, such as Ethernet, which offer significantly larger frame sizes when compared to CAN. This is for example discussed in more detail in the publication by D. Thiele et al. entitled “Formal timing analysis of CAN-to-Ethernet gateway strategies in automotive networks”, Real-Time Syst (2016) 52:88-112.
Furthermore, the increasing number of functions required by connected cars is resulting in a rise in the number of single-core ECUs that are required, increasing power and space consumption costs. It has been proposed to apply virtualisation techniques to address this issue, by using virtualization techniques to implement multiple ECUs on a multi-core processor. For example, the publication by C. Herber et al. entitled “HW/SW Trade-offs in I/O Virtualization for Control Area Networks”, DAC' 15, Jun. 7-11, 2015, San Francisco, describes such a proposal.
However, there are technical difficulties in providing a virtualized computing system for applications such as automotive embedded systems while permitting secure and rapid communications between the various components.